<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 编程的思想
        //    面向过程  c       解决问题
        //    面向对象  java    解决一类问题
        //    js基于对象的语言，脚本


        // 面向过程
        // 1有一只2岁的泰迪
        // const name = '泰迪' ;
        // const age = 2 ;
        // console.log('有一只' + age + '岁的' + name);

        // // 面向对象  类
        // const dog = {
        //     name : '泰迪' ,
        //     age : 2 ,
        //     say : function() {
        //         console.log('有一只' + this.age + '岁的' + this.name);
        //     }
        // }

        // dog.say()



        // 2 又来了一只3岁的柯基
        // 面向过程
        // function dog(name , age) {
        //     console.log('有一只' + age + '岁的' + name);
        // }

        // dog('柯基' , 3)

        // 面向对象
        //    调用了一个函数，却得到了一个对象
        //       函数内部创建了这个对象，且返回了这个对象
        function dog(name , age) {
            const obj = {} ;
            // 不断的给这个对象添加属性和方法
            obj.name = name ;
            obj.age = age ;
            obj.say = function() {
                console.log('有一只' + this.age + '岁的' + this.name);
            }
            return obj
        }
        const kj = dog('柯基' , 3) ;
        kj.say()

        console.log(kj);
        console.log(kj instanceof dog);   // false





        const arr = new Array(1,2,3) ;
        console.log(arr);
        console.log(arr instanceof Array);




    </script>
    
</body>
</html>